import tensorflow as tf

a = tf.range(10)
print(a)

# 限幅(裁剪)
# 将数据限制到一个区间内
print(tf.maximum(a, 2))
print(tf.minimum(a, 8))
print(tf.clip_by_value(a, 2, 8))

# 使用maximum函数实现relu函数
a = a - 5
print(a)

print(tf.nn.relu(a))
print(tf.maximum(a, 0))

print('*' * 100)
# 使用范数限幅
# 改变向量的模
a = tf.random.normal([2, 2], mean=10)
b = tf.norm(a)

print(a)
print(b)

c = tf.clip_by_norm(a, 10)
d = tf.clip_by_norm(a, 1)

print(c)
print(tf.norm(c))
print(d)
print(tf.norm(d))
